As a User may have a Phone, Tablet, Computer and Labtop
USE [superbots]GO/****** Object: Table [dbo].[BOTS.INSTANCES.DEVICES] Script Date: 17/01/2026 11:19:57 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[BOTS.INSTANCES.DEVICES]( [Bot.Instance.ID] [bigint] NOTNULL, [Device.ID] [int] NOTNULL, [Bot.Instance.Device.ID] [int] IDENTITY(1,1) NOTNULL, [Bot.Instance.Device.Created] [datetime2](7) NOTNULL,CONSTRAINT [PK_BOTS.INSTANCES.DEVICES] PRIMARYKEYCLUSTERED( [Bot.Instance.Device.ID] ASC)WITH (PAD_INDEX=OFF, STATISTICS_NORECOMPUTE=OFF, IGNORE_DUP_KEY=OFF, ALLOW_ROW_LOCKS=ON, ALLOW_PAGE_LOCKS=ON, OPTIMIZE_FOR_SEQUENTIAL_KEY=OFF) ON [PRIMARY]) ON [PRIMARY]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES] ADDCONSTRAINT [DF_BOTS.INSTANCES.RESOLUTIONS_Bot.Instance.Resolution.IP.Asigned] DEFAULT (getdate()) FOR [Bot.Instance.Device.Created]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES] WITHCHECKADDCONSTRAINT [FK_BOTS.INSTANCES.DEVICES_BOTS.INSTANCES] FOREIGNKEY([Bot.Instance.ID])REFERENCES [dbo].[BOTS.INSTANCES] ([Bot.Instance.ID])GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES] CHECKCONSTRAINT [FK_BOTS.INSTANCES.DEVICES_BOTS.INSTANCES]GOEXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'User may have 12 devices,but a maximum of 4 per day per url' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BOTS.INSTANCES.DEVICES', @level2type=N'COLUMN',@level2name=N'Bot.Instance.Device.ID'GO
BOTS.INSTANCES.DEVICES.IPS
USE [superbots]GO/****** Object: Table [dbo].[BOTS.INSTANCES.DEVICES.IPS] Script Date: 17/01/2026 11:20:52 ******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS]( [Bot.Instance.Device.ID] [int] IDENTITY(1,1) NOTNULL, [IP.ID] [int] NOTNULL, [Bot.Instance.Device.IP.ID] [int] NOTNULL, [Bot.Instance.Device.IP.Asigned] [datetime2](7) NOTNULL,CONSTRAINT [PK_BOTS.INSTANCES.DEVICES.IPS] PRIMARYKEYCLUSTERED( [Bot.Instance.Device.IP.ID] ASC)WITH (PAD_INDEX=OFF, STATISTICS_NORECOMPUTE=OFF, IGNORE_DUP_KEY=OFF, ALLOW_ROW_LOCKS=ON, ALLOW_PAGE_LOCKS=ON, OPTIMIZE_FOR_SEQUENTIAL_KEY=OFF) ON [PRIMARY]) ON [PRIMARY]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] ADDCONSTRAINT [DF_BOTS.INSTANCES.IPS_Bot.IP.Asigned] DEFAULT (getdate()) FOR [Bot.Instance.Device.IP.Asigned]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] WITHCHECKADDCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_BOTS.INSTANCES.DEVICES] FOREIGNKEY([Bot.Instance.Device.ID])REFERENCES [dbo].[BOTS.INSTANCES.DEVICES] ([Bot.Instance.Device.ID])GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] CHECKCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_BOTS.INSTANCES.DEVICES]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] WITHCHECKADDCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_BOTS.INSTANCES.DEVICES.IPS] FOREIGNKEY([Bot.Instance.Device.IP.ID])REFERENCES [dbo].[BOTS.INSTANCES.DEVICES.IPS] ([Bot.Instance.Device.IP.ID])GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] CHECKCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_BOTS.INSTANCES.DEVICES.IPS]GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] WITHCHECKADDCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_IPS] FOREIGNKEY([IP.ID])REFERENCES [dbo].[IPS] ([IP.ID])GOALTERTABLE [dbo].[BOTS.INSTANCES.DEVICES.IPS] CHECKCONSTRAINT [FK_BOTS.INSTANCES.DEVICES.IPS_IPS]GOEXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Max 4 per day as according to stats, youtube counts a max of 4 views uniqeu per day per ip, of course, user may have a home IP used by his phone, tablet, computer and labtop' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BOTS.INSTANCES.DEVICES.IPS', @level2type=N'COLUMN',@level2name=N'Bot.Instance.Device.ID'GOEXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Max 4 per day per DEVICE.ID ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BOTS.INSTANCES.DEVICES.IPS', @level2type=N'COLUMN',@level2name=N'Bot.Instance.Device.IP.ID'GO
CREATE TRIGGER TRG_BOTS_INSTANCES_DEVICES_IPS_DenyMoreThanOneEach4hrsperDevicePerIPON [BOTS.INSTANCES.DEVICES.IPS]AFTER INSERTASBEGIN IF EXISTS ( SELECT 1 FROM Inserted I JOIN [BOTS.INSTANCES.DEVICES.IPS] B ON (B.[Bot.Instance.Device.ID] = I.[Bot.Instance.Device.ID] AND B.[IP.ID] = I.[IP.ID]) WHERE B.[Bot.Instance.Device.IP.Asigned] <DATEADD(hour,-6,GETDATE()) ) BEGINRAISERROR('No se puede insertar el registro:Bot.Instance.Device e IP son iguales y la fecha es anterior a hace 6 horas.',16,1); ROLLBACK TRANSACTION; RETURN; ENDEND;GO
(trigger :: at least one URL (desktop, mobile or tablet must be per record)
CREATE TRIGGER [dbo].[TRG_URLS_OnIsert_Or_OnUpdate]ON [dbo].[URLS]AFTER INSERT, UPDATEASBEGIN SET NOCOUNT ON; IF EXISTS ( SELECT 1 FROM insertedWHERE ([URL.Desktop] IS NULL) AND ([URL.Mobile] IS NULL ) AND ([URL.Tablet] IS NULL) ) BEGINRAISERROR ('At least one type URL must be provided.',16,1); ROLLBACK TRANSACTION; ENDEND;
CREATE TRIGGER TRG_USERS_ValidateEmailFormat ON USERSAFTER INSERT, UPDATEASBEGIN SET NOCOUNT ON;-- Check if any inserted/updated rows have an invalid email format IF EXISTS ( SELECT 1 FROM USERS WHERE 1=1AND (-- Pattern: char + @ + char +.+ at least 2 chars for TLD [User.Email] NOT LIKE '%_@_%_.__%'-- Disallow specific common invalid characters OR [User.Email] LIKE '%[^a-z0-9@._-]%' ESCAPE '\' -- Disallow consecutive dots or @ OR [User.Email] LIKE '%..%' OR [User.Email] LIKE '%@%@%' ) ) BEGINRAISERROR ('The Email format provided is invalid.',16,1); ROLLBACK TRANSACTION; ENDEND;GO
USERS.URLS
USE [superbots]GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[USERS.URLS]( [User.ID] [int] NOTNULL, [URL.ID] [int] NOTNULL, [User.URL.ID] [int] NOTNULL, [User.URL.Created] [datetime2](7) NOTNULL, [User.URL.Legitimated] [datetime2](7) NULL,CONSTRAINT [PK_USERS.URLS] PRIMARYKEYCLUSTERED( [User.URL.ID] ASC)WITH (PAD_INDEX=OFF, STATISTICS_NORECOMPUTE=OFF, IGNORE_DUP_KEY=OFF, ALLOW_ROW_LOCKS=ON, ALLOW_PAGE_LOCKS=ON, OPTIMIZE_FOR_SEQUENTIAL_KEY=OFF) ON [PRIMARY]) ON [PRIMARY]GOALTERTABLE [dbo].[USERS.URLS] ADDCONSTRAINT [DF_USERS.URLS_User.Url.Created] DEFAULT (getdate()) FOR [User.URL.Created]GOALTERTABLE [dbo].[USERS.URLS] WITHCHECKADDCONSTRAINT [FK_USERS.URLS_URLS] FOREIGNKEY([URL.ID])REFERENCES [dbo].[URLS] ([URL.ID])GOALTERTABLE [dbo].[USERS.URLS] CHECKCONSTRAINT [FK_USERS.URLS_URLS]GOALTERTABLE [dbo].[USERS.URLS] WITHCHECKADDCONSTRAINT [FK_USERS.URLS_USERS] FOREIGNKEY([User.ID])REFERENCES [dbo].[USERS] ([User.ID])GOALTERTABLE [dbo].[USERS.URLS] CHECKCONSTRAINT [FK_USERS.URLS_USERS]GOEXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Identifies, if an url is owned by the user. Web must verify via DNS records on that domain' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'USERS.URLS', @level2type=N'COLUMN',@level2name=N'User.URL.Legitimated'GO
USERS.URLS.YOUTUBE
Made to include the stats (of views, likes, comments, etc) when user created theURL
USE [superbots]GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE [dbo].[USERS.URLS.YOUTUBES]( [User.URL.ID] [int] NOTNULL, [Views] [int] NOTNULL, [Likes] [int] NOTNULL, [Comments] [int] NOTNULL) ON [PRIMARY]GO
First of all let me say that you can use other brand / model of software and OS, as the progtramming techniques may be applied to, so better use the best you know, altought the learning is always welcome.
Please take a look at the ways you can pump up your videos, which I documented, so.
Say you developed a great bot which you can run multiple instances, or say you have a farm of devices (phones, tablets, etc..), or both.
You need for each one to have an IP address, and most important, each one must have his own, to not be shared with the others in your project, and of course, with no other away from you.
There are multiple providers out there with rent the so-called proxy ips, with pricing varying from a few dollars nper single unit to say 1 USD for a couple of thhousands.
But hey, if you want a video to have say 1 million, Do you need 1 Million of IPs ?
NO, unless you want 1 million to be stated on your video in 1 day.
All depends on your money, target time, how many views you want your video to show, and very important, the limits define by google, which translate to around 3-5 views per day per unique IP
Say at safe speak:
1 IP = 3 view counts per day
Database DB : whatever depending on your reach.
You can use
SQL database (I use MS SQL Express)
Text file (I used on beggining)
You’ll store the IPS, then devices (app/soft instances or real devices), URL’s (of your vides), Actions (say visit the url, playback a video, skip or accept the cookies banner, the ADS etc.) and thats basically.
VIRTUAL MACHINES / REAL PHYSICAL DEVICES and a control area.
As you ‘ll use, depending on your budged, following is an approach:
Almost no $
eco friendly
mid tier
well for 1m / month/s / video
V. Machines
1
3
10
50
Real Devices
1
10
100
500
IP’s
10
50
100
1000
PROGRAMMING
Thats the best part, the most important, you’ll need a software development, either using Microsoft languages, Linux, or whatever you like better. For this blog I am using .Net
Winforms / WPF and or whatever , being used old .net (before .Net CORE <.. Which I don’t like due to the mandatory recompilations)
HTML + Javascript + [ Server side (where to store Datase)]*
*for low budgets you dont need server side, just using text files is fine, but HTML & JS.
You have a great idea, something a bit different from the rest.
You want to get thousands of views from people, perhaps you have a great service, product, business, or just a video channel you’re looking to earn enought money to .. cause you’re doing great videos, right ??
Thats the first lesson you need to know. What for you, your videos might be good, may be poor for the viewers,
But hey, this blog will not talk at all the above paragraphs, as this is a development blog, focusing on programming, and server techniques, but, first of all, in order the work you spend, take some ROI / profit, please check this rules, every time you’re recording, when you interpret, and when you’re editing, so :
RULE # 1 : Do it yourself.
Avoid third parties as much as possible. Do it yourself, you can.
RULE # 2: Do it in a profesional manner.
2. A) Buy new clothes, dress well, write scripts before performing behind the camera, and buy all the pro equipment your pocket can.
Don’t need to buy last camera, or last car, or last hi tech microphone, just take a look at a bit older devices, can do almost as new ones, in a more affordable way.
2. B) Update frequently a public website, where on submit content related to each video or stream you made.
2. C) Publish a post on your channel, a few hours before, letting know that your new video is coming
RULE # 3: There’s nothing free, you must invest.
Depending on your budget. But, spend as low as your pocket’s possibilities.
RULE # 4: Avoid AI as much as possible.
That’s not intelligence, that’s an artificial, pristine decorated fashion, that, either on video, picture and voice, will not help you, on the end will damage your channel.
Avoid creating miniatures, songs, or video clips IA generated
RULE # 5: Be Unique. Atractive, but different.
Do not imitate, innovate instead. Be your own.
RULE # 6: What you are saying, demostrate on, prove it.
What you want to express, in the way you know it, may not be interpreted the same way by others.
RULE # 7: There’s no timeout.
A popular Spanish refrain says «Las prisas son malas consejeras» which equals to say, take your time.
RULE # 8: Filter
If they ask for, or you think that your product or whatever, say may have many many requests, then filter, against your rules, if they not follow, clear them all.
RULE # 9: TO NOT DISCLOSURE AT ALL
RULE # 10: BOTH HUMANS AND BOTS CAN BE WRONG Making some mistakes, so above rules may change and not to be at all true.
postdate: If they will take, be sure you’ll get from
Deja una respuesta