summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/website_telegram.py
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2024-12-16 15:05:10 +0700
committerit-fixcomart <it@fixcomart.co.id>2024-12-16 15:05:10 +0700
commit05d8edef111df1f32be76f3fdfaabfb1c8057644 (patch)
tree5ba4dbb4dbb39c1e58c2d211e3e45745673c34d1 /indoteknik_custom/models/website_telegram.py
parente81db305d2727e7b95f1bb579315da1597a8185b (diff)
<iman> update telegram
Diffstat (limited to 'indoteknik_custom/models/website_telegram.py')
-rw-r--r--indoteknik_custom/models/website_telegram.py22
1 files changed, 20 insertions, 2 deletions
diff --git a/indoteknik_custom/models/website_telegram.py b/indoteknik_custom/models/website_telegram.py
index 25dea14e..a3c64c7e 100644
--- a/indoteknik_custom/models/website_telegram.py
+++ b/indoteknik_custom/models/website_telegram.py
@@ -16,9 +16,13 @@ from telethon.tl.types import TextWithEntities
class WebsiteTelegram(models.Model):
_name = 'website.telegram'
_description = 'Telegram Channel'
+
+
tittle = fields.Char("Channel Title")
invite_link = fields.Char("Channel invite link")
username = fields.Char("Channel Name")
+ username_to_add = fields.Char("username to add on channel", compute='_compute_username_to_add')
+ user_id = fields.Many2many('res.partner', string='User Member', store=True)
id_data = fields.Char("Channel ID")
about = fields.Char("Channel Description")
is_broadcast = fields.Boolean("Is Broadcast", default=True)
@@ -27,6 +31,11 @@ class WebsiteTelegram(models.Model):
# session_string = 'MIIBCgKCAQEAyMEdY1aR+sCR3ZSJrtztKTKqigvO/vBfqACJLZtS7QMgCGXJ6XIRyy7mx66W0/sOFa7/1mAZtEoIokDP3ShoqF4fVNb6XeqgQfaUHd8wJpDWHcR2OFwvplUUI1PLTktZ9uW2WE23b+ixNwJjJGwBDJPQEQFBE+vfmH0JP503wr5INS1poWg/j25sIWeYPHYeOrFp/eXaqhISP6G+q2IeTaWTXpwZj4LzXq5YOpk4bYEQ6mvRq7D1aHWfYmlEGepfaYR8Q0YqvvhYtMte3ITnuSJs171+GDqpdKcSwHnd6FudwGO4pcCOj4WcDuXc2CTHgH8gFTNhp/Y8/SpDOhvn9QIDAQAB'
+ @api.depends('user_id')
+ def _compute_username_to_add(self):
+ for name in self.user_id:
+ self.username_to_add.append(str(name.mobile))
+
def create_channel(self, *args, **kwargs):
asyncio.run(self._async_create_channel())
@@ -35,7 +44,7 @@ class WebsiteTelegram(models.Model):
'1BVtsOJABu30MWCBFwYvvaYbFoIWi43r5a7TUZ2IWwrnSlXIwEhJS5k2y4UKjoDeMPKwhgUWn9lMk02zQjM0ZDzq61YyhkRBvZuu3hCxMsrtP92bkuZtL2g3g1VgI8s7rMhOD_WaGrZbuj-TmbTwIEbN5i1J4raDW2kYzmlLRCbT74xxrGjpzWCnVv7CSS9L2juXuut0lLMgli3_JZbqDO1IyBYh4ZFQYbMf7zv6moDR4MQp1qfnFArsikQcfxjlNXKFcSoyA_GjiIFfCuymwQVtdERXOAH03M_lm8fYbjvgxEkJvxR6hdCnYMcKpIujEEo9SmMmK7Vnl29g1TCPO5tlrDNXq3Ng='),
27799517, 'df8ee44b0ed11108245037d47b511201') as client:
result = await client(functions.channels.CreateChannelRequest(
- title=self.tittle + ' Telah Diprint',
+ title=self.tittle,
about=self.about,
broadcast=False,
megagroup=True,
@@ -115,12 +124,21 @@ class WebsiteTelegram(models.Model):
'1BVtsOJABu30MWCBFwYvvaYbFoIWi43r5a7TUZ2IWwrnSlXIwEhJS5k2y4UKjoDeMPKwhgUWn9lMk02zQjM0ZDzq61YyhkRBvZuu3hCxMsrtP92bkuZtL2g3g1VgI8s7rMhOD_WaGrZbuj-TmbTwIEbN5i1J4raDW2kYzmlLRCbT74xxrGjpzWCnVv7CSS9L2juXuut0lLMgli3_JZbqDO1IyBYh4ZFQYbMf7zv6moDR4MQp1qfnFArsikQcfxjlNXKFcSoyA_GjiIFfCuymwQVtdERXOAH03M_lm8fYbjvgxEkJvxR6hdCnYMcKpIujEEo9SmMmK7Vnl29g1TCPO5tlrDNXq3Ng='),
27799517, 'df8ee44b0ed11108245037d47b511201') as client:
channel = await client.get_entity(self.invite_link)
+
+ for name in self.username_to_add:
+ data = name
+ user_to_add = await client.get_entity(data)
+ result_add_user = await client(functions.channels.InviteToChannelRequest(
+ channel=channel,
+ users=[user_to_add.id],
+ ))
result_massage = await client(SendMessageRequest(channel, message))
+
def test_send(self):
try:
self.env.cr.savepoint()
- self.env['website.telegram'].search([('name', '=', self.name)])[0].send_to_telegram(self.test_message)
+ self.env['website.telegram'].search([('tittle', '=', self.tittle)])[0].send_to_telegram('test message')
except Exception as e:
print(e)