├── .gitignore
├── call_config.xml
├── PhoneCallScript.csproj
├── LICENSE
├── README.md
└── Program.cs
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | obj/
3 | bin/
4 | .vscode/
--------------------------------------------------------------------------------
/call_config.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Host somthing like this here: https://www.twilio.com/console/dev-tools/twiml-bins to tell the call what to do.
4 |
5 |
--------------------------------------------------------------------------------
/PhoneCallScript.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | Exe
4 | netcoreapp1.1
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Logan Saso
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## I will not be held responsible for usage of this program.
2 |
3 | ## [Tutorial](https://youtu.be/CYocJJpoH1c)
4 |
5 | ### Required Program
6 |
7 | * .NET Core for [Mac](https://www.microsoft.com/net/core#macos), [Windows](https://www.microsoft.com/net/core#windowscmd), or [Linux](ttps://www.microsoft.com/net/core#linuxredhat)
8 |
9 | ### Optional
10 |
11 | * [Git CLI](https://git-scm.com/downloads)
12 |
13 | ### Run
14 |
15 | Fill out empty info in the .cs file.
16 | Run:
17 | ```
18 | dotnet restore
19 | dotnet run
20 | ```
21 | Hold escape to clean exit after a batch of calls.
22 |
23 | Note: `dotnet restore` is what downloads the libraries and only needs to be run once when you first download the repo. `dotnet run` is the actually command that starts the program.
24 |
25 | ### Pricing
26 |
27 | Please be aware this API is not free: https://www.twilio.com/voice/pricing
28 |
29 | ## Info
30 |
31 | I decided to slap this on here because I saw [this youtube video](https://www.youtube.com/watch?v=EzedMdx6QG4) but saw no published code. As far as I can tell, this is basically it. I slightly modified it to work with my environment / sense of humor. I also added a few comments along the way. I consider this a C# learning project for me. Please use responsibly.
32 |
33 |
34 |
--------------------------------------------------------------------------------
/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using Twilio;
4 | using Twilio.Types;
5 | using Twilio.Rest.Api.V2010.Account;
6 |
7 | namespace PhoneCallScript
8 | {
9 | class Program
10 | {
11 | public static string accountId = ""; // Can be accessed from: https://www.twilio.com/console
12 | public static string authToken = ""; // Can be accessed from: https://www.twilio.com/console
13 | public static List numbers = new List(new string[] { "+1" }); // Get numbers from the twilio API https://www.twilio.com/console/phone-numbers/search (one dollar each) public static List numbersInUse = new List(); //Idk why the guy included this, it was never used
14 | public static string NumToCall = "";
15 | static void Main(string[] args)
16 | {
17 | Console.WriteLine(" -- Call Scammer Line Flooder (v0.0.1) -- "); // Fuck yeah, semantic versioning
18 | Console.Write("Enter number to flood harder than the red sea in egypt (remember to add +1 at the beginning): ");
19 | NumToCall = Console.ReadLine();
20 | Console.WriteLine("Press ENTER to let the sea walls fall. Otherwise, hit the X to close. Hold Escape after a batch to clean exit the program, with stats.");
21 | Console.ReadLine();
22 | Console.Clear();
23 | TwilioClient.Init(accountId, authToken);
24 |
25 | int count = 0, call_num = 0;
26 | do
27 | {
28 | Console.WriteLine($"Starting Call Batch {count + 1} ({numbers.Count} Nums.)");
29 | foreach (string num in numbers)
30 | {
31 | Call(num);
32 | System.Threading.Thread.Sleep(1000);
33 | call_num++;
34 | }
35 | count++;
36 | System.Threading.Thread.Sleep(5000);
37 | } while (!(Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape)); // Hold down the escape key to stop calling
38 | Console.WriteLine($"Batches: {count + 1}\nCalls: {call_num + 1}\nView Recordings: https://www.twilio.com/console/voice/dashboard");
39 | }
40 |
41 | static void Call(string fromNumber)
42 | {
43 | try
44 | {
45 | var call = CallResource.Create(
46 | to: new PhoneNumber(NumToCall),
47 | from: new PhoneNumber(fromNumber),
48 | record: true, // You can access the recordings from: https://www.twilio.com/console/voice/dashboard
49 | url: new Uri("") // Should be a link to this kind of file: https://www.twilio.com/docs/api/twiml - Host here: https://www.twilio.com/console/dev-tools/twiml-bins
50 | ); //Host your twiml here: https://www.twilio.com/console/dev-tools/twiml-bins
51 | Console.WriteLine($"Starting call to {call.To} from {fromNumber} starting {call.StartTime}.");
52 | }
53 | catch (Exception ex)
54 | {
55 | Console.WriteLine("An exception occurred when making call object, perhaps you must replace the URI text.");
56 | Console.WriteLine(ex);
57 | }
58 | }
59 | }
60 | }
61 |
--------------------------------------------------------------------------------