diff --git a/pynubank/nubank.py b/pynubank/nubank.py index 23dd07f..dd77997 100644 --- a/pynubank/nubank.py +++ b/pynubank/nubank.py @@ -302,3 +302,18 @@ def find_pix_identifier(table_item: dict): return return identifier_data['value'] + + @requires_auth_mode(AuthMode.APP) + def get_pix_message(self, transaction_id: str): + message = '' + response = self._make_graphql_request('pix_receipt_screen', {'type': 'TRANSFER_IN', 'id': transaction_id}) + if 'errors' in response.keys(): + return + + screen_pieces = response['data']['viewer']['savingsAccount']['getGenericReceiptScreen']['screenPieces'] + + for screen_piece in screen_pieces: + if screen_piece['__typename'] == 'ReceiptMessagePiece': + message = screen_piece['messageContent'] + + return message diff --git a/pynubank/utils/mocked_responses/pix_receipt_screen.json b/pynubank/utils/mocked_responses/pix_receipt_screen.json index d49843a..1de1558 100644 --- a/pynubank/utils/mocked_responses/pix_receipt_screen.json +++ b/pynubank/utils/mocked_responses/pix_receipt_screen.json @@ -27,6 +27,12 @@ } ] }, + { + "__typename": "ReceiptMessagePiece", + "fallbackMessage": "Atualize seu app para ver todas as informações!", + "messageTitle": "Descrição", + "messageContent": "Mensagem enviada via PIX" + }, { "__typename": "ReceiptTablePiece", "fallbackMessage": "Atualize seu app para ver todas as informações!", diff --git a/setup.py b/setup.py index 3b4837d..6c89a08 100644 --- a/setup.py +++ b/setup.py @@ -10,7 +10,7 @@ def read(fname): setup( name='pynubank', - version='2.18.0', + version='2.18.1', url='https://github.com/andreroggeri/pynubank', author='André Roggeri Campos', author_email='a.roggeri.c@gmail.com',