Проблема с получением смс на smpplib Python - PullRequest
0 голосов
/ 10 октября 2019

Проблема с получением SMS с латинскими символами, когда я использую команду pdu.short_message.decode ('utf-8') все до того, как латинский символ обрезается. Кто-нибудь знает, как решить эту проблему?

Аппаратное обеспечение - goip4 с включенным сервером smpp. Я пытаюсь использовать Python 3.6 и 3.7. Та же проблема

Код из Интернета, но тот же код, который я использую в своем проекте.

logging.basicConfig(level='DEBUG')
client = smpplib.client.Client('123.456.789.101', 1123)
def getPdu(pdu):
    print(pdu.short_message.decode('utf-8'))
client.set_message_received_handler(getPdu)
client.connect()
client.bind_transceiver(system_id='1234', password='5678')
parts, encoding_flag, msg_type_flag = smpplib.gsm.make_parts('Руский из питона 3, кодировочку зажги!\n')
for part in parts:
    pdu = client.send_message(
        source_addr_ton=smpplib.consts.SMPP_TON_NWSPEC,
        source_addr_npi=smpplib.consts.SMPP_NPI_ISDN,
        source_addr='1591',
        dest_addr_ton=smpplib.consts.SMPP_TON_NATNL,
        dest_addr_npi=smpplib.consts.SMPP_NPI_ISDN,
        # Make sure thease two params are byte strings, not unicode:
        destination_addr='79531498486',
        short_message=part,
        data_coding=encoding_flag,
        esm_class=msg_type_flag,
        registered_delivery=True,
    )
    print(pdu.sequence)
client.listen()
...