2012-01-21 14 views
6

क्या यह सत्यापित करने का कोई तरीका है कि स्काइप उपयोगकर्ता नाम किसी वेब ऐप में मान्य है? (खाता निर्माण पर फॉर्म सत्यापन)स्काइप उपयोगकर्ता नाम सत्यापन

वैध रूप से मेरा मतलब नियमित अभिव्यक्तियों का उपयोग करके नहीं है। हम आसानी से यह देखने के लिए जांच करते हैं कि यह 6-22 वर्ण है, एक पत्र से शुरू होता है, आदि। मैं इसे सत्यापित करना चाहता हूं 1) उपयोगकर्ता नाम दर्ज किया गया वास्तव में उपयोगकर्ता इसे इनपुट करने के लिए कहता है, जैसा कि हम ईमेल भेजकर ईमेल को मान्य करते हैं इसे सत्यापित करने के लिए एक लिंक या 2) सत्यापित करें कि उस उपयोगकर्ता नाम वाले उपयोगकर्ता स्काइप डेटाबेस में मौजूद है।

धन्यवाद!

उत्तर

1

मुझे लगता है कि आप करना होगा आप वास्तव में क्या कहा: "जब हम एक लिंक के साथ एक ईमेल भेज कर इसकी पुष्टि के लिए इसी तरह की यह सत्यापित करने के लिए"

मैं Skype4py में खुदाई हैं, तो आप ' किसी के लिए खोज करने का एक उदाहरण मिलेगा।

तो तुम कर सकते हैं:

  1. जल्दी मान्यता किसी तरह का है कि व्यक्ति
  2. उसे/उसे एक कुंजी/लिंक के साथ भेजने के एक txt संदेश के लिए खोज के द्वारा सत्यापित करने के लिए अपने उपयोगकर्ता

देखें: need an python script that uses skype4py to send an instant message

+0

मैं इस्तेमाल किया/उपलब्ध स्काइप उपयोगकर्ता नाम सर्च कर रहे हैं के लिए एक छोटे से गहरे लाल रंग का रत्न बनाया, तो आप इसे यहाँ https://github.com/smnplk/skype-check पा सकते हैं, लेकिन यह अभी भी कार्य प्रगति पर है .. – blushrt

10

यह बहुत विश्वसनीय नहीं हो सकता है, लेकिन निम्न एंडपॉइंट आपको स्काइप उपयोगकर्ता नाम की उपलब्धता के आधार पर अलग-अलग प्रतिक्रिया देगा: https://login.skype.com/json/validator

# Request (unavailable): 
curl -iX POST -H" Application/json" https://login.skype.com/json/validator?new_username=borist 

# Response: 
{ 
    "status": 406, 
    "status_text": "valid", 
    "data": { 
    "markup": "Skype Name not available", 
    "alternatives": true, 
    "fieldDetails": "<label>Suggestions<\/label><ul><li><label><input class=\"skypeNameSuggestion\" type=\"radio\" name=\"selectSkypeName\" value=\"borist92\"\/>borist92<\/label> <\/li><li><label><input class=\"skypeNameSuggestion\" type=\"radio\" name=\"selectSkypeName\" value=\"borist176\"\/>borist176<\/label> <\/li><li><label><input class=\"skypeNameSuggestion\" type=\"radio\" name=\"selectSkypeName\" value=\"borist417\"\/>borist417<\/label> <\/li><\/ul>" 
    } 
} 

# Request (available) 
curl -iX POST -H" Application/json" https://login.skype.com/json/validator?new_username=boris3294a 

# Response 
{ 
    "status":200, 
    "status_text":"valid", 
    "data":{"markup":"", 
    "alternatives":false, 
    "fieldDetails":""} 
} 
+0

अफसोस की बात है, यह जुड़े खातों के साथ काम नहीं करेगा। अर्थात। 'xyz @ live.com' में उपयोगकर्ता नाम 'लाइव: xyz' होगा। यह सेवा अवैध रूप से कॉल करेगी, क्योंकि ':' – modiX

+0

मुझे एक्सेस नियंत्रण मूल त्रुटि की अनुमति देता है, जब मैं इसे अपने लोकहोस्ट में उपयोग करता हूं। इसे हल करने के लिए कोई विचार? – Keerthivasan

1

बिल्डिंग बंद pho79 के जवाब की, मैं a gist बना दिया है: यहाँ (इस लेखन के समय) एक अनुपलब्ध और उपलब्ध उपयोगकर्ता नाम के दो उदाहरण हैं। कोड बस यह देखने के लिए जांचता है कि संदेश लौटाया गया है या नहीं, यह कहता है कि नाम अनुपलब्ध है जिसका अर्थ है कि यह उपयोग में है। कुछ अन्य संदेश हैं जो इसे अन्य त्रुटियों के लिए वापस भेजता है, इसलिए मैं यही करता हूं।

import requests 

def checkName(name): 
    values = { "new_username" : name } 
    r = requests.post("https://login.skype.com/json/validator", values) 
    return "not available" in r.json()[u'data'][u'markup'] 
+0

यह केवल अंग्रेज़ी के लिए काम करता है। बस इसके बारे में पता होना चाहिए। "मार्कअप" में लौटाए गए संदेश स्थानीयकृत हैं (उदाहरण के लिए जापानी में: "स्काइप 名 は 使用 で き ま せ ん")। जब यह संदेश खाली है, तो मुझे परीक्षण करने के लिए यह अधिक विश्वसनीय लगता है। यदि यह खाली है, तो स्काइप आईडी अभी तक नहीं ली गई थी, जिसका अर्थ यह है कि फिलहाल यह वैध स्काइप आईडी नहीं है। –

संबंधित मुद्दे