मैं अपनी पायथन लिपि को अपने निजी चैनल पर संदेश भेजने की कोशिश कर रहा हूं लेकिन मुझे यह त्रुटि मिलती है।

telethon.errors.rpcerrorlist.ChatWriteForbiddenError: आप इस चैट में नहीं लिख सकते (SendMessageRequest के कारण)

मैं उस चैनल में केवल व्यवस्थापक हूं और यहां कोड है जो मैं संदेश भेजने के लिए उपयोग करता हूं, जब मैं स्वयं को संदेश भेजने का प्रयास करता हूं तो यह ठीक काम करता है ..

from telethon import TelegramClient
from telethon.errors import SessionPasswordNeededError

api_id = 'my api id'
api_hash = 'my api hash'
phone = 'my number'
username = 'my username'

# Create the client and connect
client = TelegramClient(username, api_id, api_hash)
client.start()
print("Client Created")
# Ensure you're authorized
if not client.is_user_authorized():
    client.send_code_request(phone)
    try:
        client.sign_in(phone, input('Enter the code: '))
    except SessionPasswordNeededError:
        client.sign_in(password=input('Password: '))

async def send_mess(message):
    await client.send_message(entity='my channel name', message=message)

while True:
    
    some other code

    if last_message != new_message:
        with client:
            client.loop.run_until_complete(send_mess(message=new_message))
        last_message = new_message

क्या मुझे अपनी स्क्रिप्ट पर व्यवस्थापक अधिकार रखने के लिए कुछ बदलने की ज़रूरत है या समस्या कहाँ है? मुझे हर उत्तर के लिए खुशी होगी। कुछ अच्छे नमूना कोड दोस्तों को दें: डी अब मेरे लिए यह वास्तव में बड़ी समस्या है।

2
Kurina11 6 जिंदा 2021, 02:54
तीन बार जांचें कि यह वह चैट है जिसकी आप अपेक्षा करते हैं, और यह उस बॉट के साथ खाता है जिसकी आप अपेक्षा करते हैं
 – 
TheKill-996
6 जिंदा 2021, 03:01

1 उत्तर

सबसे बढ़िया उत्तर

पहले परीक्षण में कि आप किसी अन्य चैनल या उपयोगकर्ता को संदेश भेज सकते हैं। यदि आप नहीं कर सकते तो आपको सभी कोड साझा करने होंगे।

फिर सुनिश्चित करें कि इस मामले में आप जिस खाते का उपयोग कर रहे हैं वह चैनल में व्यवस्थापक है। यदि खाता व्यवस्थापक है तो आपको यह त्रुटि प्राप्त करना असंभव है। व्यवस्थापक अधिकारों की भी जाँच करें और सुनिश्चित करें कि पोस्ट संदेश सक्षम है।

enter image description here

बीच में, 'मेरा चैनल नाम' के बजाय चैनल उपयोगकर्ता नाम या चैनल संख्यात्मक आईडी का उपयोग करें। चैनल न्यूमेरिक आईडी -100 जैसे -1001212229355 से शुरू होती है। आप संख्यात्मक आईडी का उपयोग करना बेहतर समझते हैं। इसे खोजने के लिए अपने चैनल संदेशों में से एक को https://t.me/userinfobot पर अग्रेषित करें।

await client.send_message(entity='my channel name', message=message)
1
Purya 6 जिंदा 2021, 03:22