Solved SKVoice

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

I can't help you with your question... but I think your question should go in Skript and not in Request because you need help and you don't want to get an skript with specific function.
 
I uploaded it on my Mediafire account: https://www.mediafire.com/?a5ps637373cmscb

All the work and rights go to Levence, the creator of the addon

The documentation:
4q9evbiu.png

fyteylhy.png

ibm2hfwd.png


ztb9hkuw.png


This handy addon allows you to communicate with a TeamSpeak3³ instance in Skript!
Just simply put SKVoice into your plugins folder and get new experience of coding.


ab5m6od8.png


mqnw9wcm.png

Sending channel messages to query instance
Sending broadcast messages to query instance
❖ Able to kick online clients by ID
❖ Able to tempban on- & offline clients by ID
❖ Able to permban on- & offline clients by ID
❖ Able to poke online clients by ID
❖ Able to send private messages to online clients
Adding group(s) to on- & offline clients
Removing group(s) from on- & offline clients
Changing description of online clients
Removing description from online clients
❖ Able to unban clients by ID
❖ Able to delete all ban entries
Checking connection state of query
Checking online state of clients by ID
Checking ban state of clients by ID
Checking if clients are in a specific group
❖ Able to get nicknames of on- & offline clients
❖ Able to get last ip-addresses of on- & offline clients
❖ Able to get descriptions of online clients
❖ I[/I] Able to get identities of online- & offline clients by nickname
❖ I[/I] Able to get identities of online- & offline clients by ip-address
❖ I[/I] Able to create a new privilege key by group id
❖ I[/I] Able to get identities of all online clients


✎ Note: "ID" means the identity value of a client.

ab5m6od8.png


welykofx.png


► EFFECTS (16):

Connecting to TeamSpeak³ server:
(teamspeak|ts) [server] connect to %string% with user %string% and (login|credentials) %string%, %string% [on query port %integer%] [at flood level %string%]
Disconnecting from TeamSpeak³ server:
(teamspeak|ts) [server] disconnect

● Sending channel message to instance:
(teamspeak|ts) [server] send channel message %string%
● Sending broadcast message to instance:
(teamspeak|ts) [server] send broadcast message %string%

Kicking online client from instance:
(teamspeak|ts) [server] kick client %string% (due to|because) %string% from server
Banning on- & offline client temporary:
(teamspeak|ts) [server] tempban client %string% (due to|because) %string% for %integer% seconds
Banning on- & offline client permanently:
(teamspeak|ts) [server] ban client %string% (due to|because) %string%

Poke'ing online client with message:
(teamspeak|ts) [server] poke client %string% with (text|message) %string%
● Sending private message to online client:
(teamspeak|ts) [server] send private (text|message) %string% to client %string%

Adding on- & offline client to group:
(teamspeak|ts) [server] add client %string% to group id %integer%
Removing on- & offline client from group:
(teamspeak|ts) [server] remove client %string% from group id %integer%

Changing description of online client:
(teamspeak|ts) [server] change description of client %string% to %string%
Removing description of online client:
(teamspeak|ts) [server] remove description of client %string%

● (v1.1.0+) Creating and returns a new privilege key by group id:
[set %variable% to] new (teamspeak|ts) privilege key by group id %string%
Deleting all ban entries from instance:
(teamspeak|ts) [server] delete all ban entries
Unbanning client from instance:
(teamspeak|ts) [server] unban client %string%

► EXPRESSIONS (6):

● Returns the nickname of specific on- & offline client:
(teamspeak|ts) (name|nickname) of client %string%
%string%'s (teamspeak|ts) (name|nickname)
● Returns the ip-address of specific on- & offline client:
(teamspeak|ts) (ip|address) of client %string%
%string%'s (teamspeak|ts) (ip|address)
● Returns the description of specific on- & offline client:
(teamspeak|ts) description of client %string%
%string%'s (teamspeak|ts) description

● (v1.1.0+) Returns identities of online- & offline clients who's name is specific string:
(teamspeak|ts) get client\[s\] by (name|nickname) %string%
● (v1.1.0+) Returns identities of online - & offline clients who's IP is specific string:
(teamspeak|ts) get client\[s\] by (ip|address) %string%
● (v1.1.0+) Returns identities of all online clients (looping this will may cause lags):
[set %variable% to] [all] online clients

► CONDITIONS (4):

● Returns if query is connected or not: (Type: BOOLEAN)
(teamspeak|ts) connection state

● Returns if specific client is online or offline: (Type: BOOLEAN)
(teamspeak|ts) online state of client %string%
%string%'s (teamspeak|ts) online state

● Returns if specific client is banned or not: (Type: BOOLEAN)
(teamspeak|ts) ban state of client %string%
%string%'s (teamspeak|ts) ban state

● Returns if specific client is in specific group: (Type: BOOLEAN)
(teamspeak|ts) client %string% check group id %integer%

ab5m6od8.png

hd7qe7p2.png


Step 1: Connect through socket to your TeamSpeak³ server!

# valid flood levels: DEFAULT and UNLIMITED (only for whitelisted IPs)
on skript load:
ts connect to "127.0.0.1:9987" with user "Test" and credentials "query-user", "query-pw" on query port 10011 at flood level "DEFAULT"
```
Step 2: Use any effect, expression or condition from the documentation!
here's an example - poking an online client

example client identity: dTDZSALoDlcfGQLuFbhPoLSeF8=

command /poke [] []:
trigger:
if teamspeak connection state is false:
message "Can't poke client because no query is connected!"
else:
ts poke client arg-1 with message arg-2

```
# here's an another example - banning an online- & offline client temporary
# example client identity: dTDZSALoDlcfGQLuFbhPoLSeF8=
command /tempban [] [] []:
trigger:
if teamspeak connection state is false:
message "Can't ban client because no query is connected!"
else:
ts tempban client arg-1 due to arg-2 for arg-3 seconds
```
Step 3 (optional): Close socket after unloading Skript!
on skript unload:
if teamspeak connection state is true:
teamspeak server disconnect


ab5m6od8.png


fi79e8im.png


Why query doesn't connect to TeamSpeak³ server?
➽ Make sure you're using valid credentials (& query port) - I also suggest to add the ip address of your minecraft server to query whitelist file to avoid getting banned for e.g. command flood.
Why is my server lagging when executing query commands?
➽ Unfortunately this is the only disadvantage but you can whitelist the ip address of your minecraft server to query whitelite file and try to use flood level 'UNLIMITED'.
Why do I always get "Client couldn't be find!" message?
➽ If your specific client is online but can't be find by connected query, you'll need to check the permissions of all query groups.
Where can I get query credentials / create query user?
➽ Go to "Tools" >> "ServerQuery Login", enter a random query name. Then you'll have successfully created a new query user.


Why does query close connection automatically after a while?
➽ Please ask your teamspeak - and minecraft server hoster.
Why does nothing happens after using effect / expression?
➽ Please view the latest log file / your console.
Where can I get the source code of this project?
➽ Currently nowhere, sorry.
Do you have another problem which isn't listed here?
Write below this post or PM me and I'll help you as fast as I can! :emoji_slight_smile:


ab5m6od8.png


ctvyr64q.png


> <a class="attachment" href="/uploads/default/original/2X/c/c000faae800795d1f531ded8d7c2384f6f35d12a.jar">SKVoice v1.0.0</a> (300,4 KB) [01/10/16 | 10.01.16]
<a class="attachment" href="/uploads/default/original/2X/6/6e9afdf9d893077b01bdadc8d8dbecc97d08bfab.jar">SKVoice v1.1.0</a> (397,5 KB) [01/16/16 | 16.01.16]

ATTENTION: The latest file of this list above is the newest! (v1.1.0)
(Compatible with Java 7 and higher & Spigot 1.7 and higher.)


ibm2hfwd.png

 
Last edited by a moderator:
  • Like
Reactions: LeVence
I uploaded it on my Mediafire account: https://www.mediafire.com/?a5ps637373cmscb

All the work and rights go to Levence, the creator of the addon

The documentation:
4q9evbiu.png

fyteylhy.png

ibm2hfwd.png


ztb9hkuw.png


This handy addon allows you to communicate with a TeamSpeak3³ instance in Skript!
Just simply put SKVoice into your plugins folder and get new experience of coding.


ab5m6od8.png


mqnw9wcm.png

Sending channel messages to query instance
Sending broadcast messages to query instance
❖ Able to kick online clients by ID
❖ Able to tempban on- & offline clients by ID
❖ Able to permban on- & offline clients by ID
❖ Able to poke online clients by ID
❖ Able to send private messages to online clients
Adding group(s) to on- & offline clients
Removing group(s) from on- & offline clients
Changing description of online clients
Removing description from online clients
❖ Able to unban clients by ID
❖ Able to delete all ban entries
Checking connection state of query
Checking online state of clients by ID
Checking ban state of clients by ID
Checking if clients are in a specific group
❖ Able to get nicknames of on- & offline clients
❖ Able to get last ip-addresses of on- & offline clients
❖ Able to get descriptions of online clients
❖ I[/I] Able to get identities of online- & offline clients by nickname
❖ I[/I] Able to get identities of online- & offline clients by ip-address
❖ I[/I] Able to create a new privilege key by group id
❖ I[/I] Able to get identities of all online clients


✎ Note: "ID" means the identity value of a client.

ab5m6od8.png


welykofx.png


► EFFECTS (16):

Connecting to TeamSpeak³ server:
(teamspeak|ts) [server] connect to %string% with user %string% and (login|credentials) %string%, %string% [on query port %integer%] [at flood level %string%]
Disconnecting from TeamSpeak³ server:
(teamspeak|ts) [server] disconnect

● Sending channel message to instance:
(teamspeak|ts) [server] send channel message %string%
● Sending broadcast message to instance:
(teamspeak|ts) [server] send broadcast message %string%

Kicking online client from instance:
(teamspeak|ts) [server] kick client %string% (due to|because) %string% from server
Banning on- & offline client temporary:
(teamspeak|ts) [server] tempban client %string% (due to|because) %string% for %integer% seconds
Banning on- & offline client permanently:
(teamspeak|ts) [server] ban client %string% (due to|because) %string%

Poke'ing online client with message:
(teamspeak|ts) [server] poke client %string% with (text|message) %string%
● Sending private message to online client:
(teamspeak|ts) [server] send private (text|message) %string% to client %string%

Adding on- & offline client to group:
(teamspeak|ts) [server] add client %string% to group id %integer%
Removing on- & offline client from group:
(teamspeak|ts) [server] remove client %string% from group id %integer%

Changing description of online client:
(teamspeak|ts) [server] change description of client %string% to %string%
Removing description of online client:
(teamspeak|ts) [server] remove description of client %string%

● (v1.1.0+) Creating and returns a new privilege key by group id:
[set %variable% to] new (teamspeak|ts) privilege key by group id %string%
Deleting all ban entries from instance:
(teamspeak|ts) [server] delete all ban entries
Unbanning client from instance:
(teamspeak|ts) [server] unban client %string%

► EXPRESSIONS (6):

● Returns the nickname of specific on- & offline client:
(teamspeak|ts) (name|nickname) of client %string%
%string%'s (teamspeak|ts) (name|nickname)
● Returns the ip-address of specific on- & offline client:
(teamspeak|ts) (ip|address) of client %string%
%string%'s (teamspeak|ts) (ip|address)
● Returns the description of specific on- & offline client:
(teamspeak|ts) description of client %string%
%string%'s (teamspeak|ts) description

● (v1.1.0+) Returns identities of online- & offline clients who's name is specific string:
(teamspeak|ts) get client\[s\] by (name|nickname) %string%
● (v1.1.0+) Returns identities of online - & offline clients who's IP is specific string:
(teamspeak|ts) get client\[s\] by (ip|address) %string%
● (v1.1.0+) Returns identities of all online clients (looping this will may cause lags):
[set %variable% to] [all] online clients

► CONDITIONS (4):

● Returns if query is connected or not: (Type: BOOLEAN)
(teamspeak|ts) connection state

● Returns if specific client is online or offline: (Type: BOOLEAN)
(teamspeak|ts) online state of client %string%
%string%'s (teamspeak|ts) online state

● Returns if specific client is banned or not: (Type: BOOLEAN)
(teamspeak|ts) ban state of client %string%
%string%'s (teamspeak|ts) ban state

● Returns if specific client is in specific group: (Type: BOOLEAN)
(teamspeak|ts) client %string% check group id %integer%

ab5m6od8.png

hd7qe7p2.png


Step 1: Connect through socket to your TeamSpeak³ server!

# valid flood levels: DEFAULT and UNLIMITED (only for whitelisted IPs)
on skript load:
ts connect to "127.0.0.1:9987" with user "Test" and credentials "query-user", "query-pw" on query port 10011 at flood level "DEFAULT"
```
Step 2: Use any effect, expression or condition from the documentation!
here's an example - poking an online client

example client identity: dTDZSALoDlcfGQLuFbhPoLSeF8=

command /poke [] []:
trigger:
if teamspeak connection state is false:
message "Can't poke client because no query is connected!"
else:
ts poke client arg-1 with message arg-2

```
# here's an another example - banning an online- & offline client temporary
# example client identity: dTDZSALoDlcfGQLuFbhPoLSeF8=
command /tempban [] [] []:
trigger:
if teamspeak connection state is false:
message "Can't ban client because no query is connected!"
else:
ts tempban client arg-1 due to arg-2 for arg-3 seconds
```
Step 3 (optional): Close socket after unloading Skript!
on skript unload:
if teamspeak connection state is true:
teamspeak server disconnect


ab5m6od8.png


fi79e8im.png


Why query doesn't connect to TeamSpeak³ server?
➽ Make sure you're using valid credentials (& query port) - I also suggest to add the ip address of your minecraft server to query whitelist file to avoid getting banned for e.g. command flood.
Why is my server lagging when executing query commands?
➽ Unfortunately this is the only disadvantage but you can whitelist the ip address of your minecraft server to query whitelite file and try to use flood level 'UNLIMITED'.
Why do I always get "Client couldn't be find!" message?
➽ If your specific client is online but can't be find by connected query, you'll need to check the permissions of all query groups.
Where can I get query credentials / create query user?
➽ Go to "Tools" >> "ServerQuery Login", enter a random query name. Then you'll have successfully created a new query user.


Why does query close connection automatically after a while?
➽ Please ask your teamspeak - and minecraft server hoster.
Why does nothing happens after using effect / expression?
➽ Please view the latest log file / your console.
Where can I get the source code of this project?
➽ Currently nowhere, sorry.
Do you have another problem which isn't listed here?
Write below this post or PM me and I'll help you as fast as I can! :emoji_slight_smile:


ab5m6od8.png


ctvyr64q.png


> <a class="attachment" href="/uploads/default/original/2X/c/c000faae800795d1f531ded8d7c2384f6f35d12a.jar">SKVoice v1.0.0</a> (300,4 KB) [01/10/16 | 10.01.16]
<a class="attachment" href="/uploads/default/original/2X/6/6e9afdf9d893077b01bdadc8d8dbecc97d08bfab.jar">SKVoice v1.1.0</a> (397,5 KB) [01/16/16 | 16.01.16]

ATTENTION: The latest file of this list above is the newest! (v1.1.0)
(Compatible with Java 7 and higher & Spigot 1.7 and higher.)


ibm2hfwd.png

Ty, all Works.