Проблема с получением 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()