summaryrefslogtreecommitdiff
path: root/Documentation.txt
blob: ee0176f33b76033e885dfbfcbaddb60aba124eed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
                      __    __
                     /\ \__/\ \
       _____   __  __\ \ ,_\ \ \___     ___     ___
      /\ '__`\/\ \/\ \\ \ \/\ \  _ `\  / __`\ /' _ `\
      \ \ \L\ \ \ \_\ \\ \ \_\ \ \ \ \/\ \L\ \/\ \/\ \
       \ \ ,__/\/`____ \\ \__\\ \_\ \_\ \____/\ \_\ \_\
        \ \ \/  `/___/> \\/__/ \/_/\/_/\/___/  \/_/\/_/
         \ \_\     /\___/   ___  _ __ ___   ___  __ _| | ___
          \/_/     \/__/   / _ \| '_ ` _ \ / _ \/ _` | |/ _ \
                          | (_) | | | | | |  __/ (_| | |  __/
====== Tools               \___/|_| |_| |_|\___|\__, |_|\___|
 omegle.py - OmegleChat class and simple client |___/
 chat.py - more advanced client
 proxy.py - connects two chats
 db_proxy.py - connect two and insert into db
 injector.py==gui.py - same as above
 megahal_bot.py - megahal against omegle
 megahal_local.py - megahal against YOU
    = do note abuse these tools or the following information =


==== Catch a connection:
Timing is everything..
 $ touch lock

1: $ while stat lock > /dev/null; do sleep 0.001; done; python proxy.py
2: $ while stat lock > /dev/null; do sleep 0.001; done; python proxy.py

====== API Documentation
==== Connection
URL: http://omegle.com/

HTTP-Header:
 Host: omegle.com
 Content-type: application/x-www-form-urlencoded; charset=utf-8
 Accept: application/json

All API-Calls return JSON-Data. The Returncode for success is "win", the
errorcode is "fail".

==== Commands:


                          dooooooooooooooooop
                          d8   OMEGLE      8b
                          d8_______________8b
                          `""""""";"""""""""'
        dP8L                      |
       8P  8b                     |
  ,._  `8odP _o.                  |  /count
  `"YYbood8dPP'                   |      <-- Online Users
       '`d8                       |  /start
         d8                       |      <-- id
         88.                      |  /disconnect -> "id"
       ,8P`Yb.                    |      <-- "win"||"fail"
      ,8'   `Y8                   |  /events -> "id"
                                  |      <-- [["type,...],...]
                                  |  /send -> "id"
                                  |      <-- "win"||"fail"

== /start - Start a conversation
URL: /start
METHOD: POST
PARAM: {}

RETURNS: "ABCDE"
 ABCDE is a random string to identify the connection

== /events - Poll for events
URL: /events
METHOD: POST
PARAM: {'id':'ABCDE'}

RETURNS: [[TYPE,data...],...]
  EXAMPLE 1: [["typing"], ["gotMessage", "im 22 m finland"]]
  EXAMPLE 2: [["gotMessage", "ok"]]
  EXAMPLE 3: [["typing"]]
  EXAMPLE 4: [["typing"], ["gotMessage", "hi"], ["typing"], ["gotMessage", "asl"]]
  EXAMPLE 5: [["waiting"], ["connected"]]

Return Messagetypes:
  ["typing"]               - Stranger is typing
  ["stoppedTyping"]        - Stranger has stopped typing
  ["gotMessage", "ABCDE"]  - Stranger send "ABCDE"
  ["waiting"]              - ???
  ["connected"]            - ready to send messages
  ["strangerDisconnected"] - Stranger pressed disconnect

Note: The omegle sorver is blocking the connection if no event
 occured.

== /send - Send Message
URL: /send
PARAM: {'id':'ABCDE', 'msg':'ABCDE'}

RETURNS: "win"
	 "fail"

== /disconnect - Disconnect/Quit Chat
URL: /disconnect
METHOD: POST
PARAM: {'id':'ABCDE'}

RETURNS: "win"
         "fail"

== /count - Get user count
URL: /count
METHOD: GET
PARAM: {}

RETURNS: 1234
 1234 is the number of users online