ESX

Here you will find a basic errors in Smartphone guide to know how to respond to your tickets.

1. SCREENSHOT-BASIC NEVER START?

As we all know, screenshot-basic asks for dependence on updated webpack, and many still do not know how to get them, for that reason here we will facilitate a link with the late webpacks.
You can use my own webpacks or the ones we mentioned in the resource dependencies.
Basic error or screenshot-basic startup.

2. CAN NOT YOU TAKE PICTURES?

This error is very common, and is linked to the previous one, apparently screenshot-basic does not work properly or maybe the customer did not add a webhook in its config_webhook.lua. Remember that without a webhook there, you can never take a photograph.
The most optimal by protocol, would be to ask for a Webpacks update with this link and also add a Webhook at the config_webhook.lua.

3. SERVER CALLBACK DOES NOT EXIST

This error is not as common, and your trigger can be many options. We will always ask as an main protocol a start screenshot of said script.
The most common in this error, is that the customer has not installed the update correctly or maybe the changelog was not correct, the most optimal solution is to ask to make a completely clean installation to verify if the error comes from there.
Do a reinstall of the resource or verify that it has started correctly, most likely it is a lack of dependencies or perhaps a misconfiguration.
Example server callback "event" does not exist example.

4. CALLS DON'T WORK FOR WORKERS

Many of the customers do not know how to execute calls to workers.
qs-smartphone/config/config.lua example.
Here we can see that we have a police job assigned with the number 911, then the worker should use the 911 command to receive calls, or use the same command to not receive calls, this avoids the spam.
The work must be assigned in the Config.Job and in Config.jobCommands.

5. YOUTUBE OR SPOTIFY NOT WORK

First of all, we must make sure that the customer added its YouTube API in config_javascript.js.
As much as there is a default API, this can fall after the number of uses of the phone, so each server must have its own API.
To add the API, you should only follow the guide that there is a continuation of the config, although in the same way we attach a video guide how to create your API here.
Example within qs-smartphone/config/config_javascript.js.
Another error that usually commit the customers, is to search by video name, and this will never work because of the latest YouTube policies for APIs.
You can only search by link, not by video name.

6. QS-RACING ERROR IN SERVERSIDE

This error is as simple as downloading the DLC and executing it.
Apparently the Customer does not count the DLC downloaded and receive that error when using the app.
The DLC is initiating session at www.quasar-store.com on Smartphone DLC.
If you interact with the app without having the DLC, you will receive this error.

7. UNKNOWN COLUMN IN ORDER CLAUSE.

In this example we can see a common error when installing an SQL. As we can see, it says that a column is missing in the SQL "twitter_tweets".
This message applies to any SQL.
Missing column error example.

8. DO YOU HAVE BATTERY ERRORS?

This may possibly happen to you, but don't worry, whatever battery error you have you can just go to battery.json and delete all its content, then put {} in the file.
With this we will restart the batteries of all users and just by saving it it will be applied automatically, it is not necessary to restart the server.
If you have a lot of problems with this system, you can choose to set Config.EnableBattery to false.

9. MYSQL (KEY / VALUE PAIR)

This error can often occur on old versions of mysql-async.To fix it easily, you just have to send you the latest version of mysql-async to Customer, here we attach the repository link.
Example error in old mysql-async.

10. CHANGE PHONE NUMBERS

For the ESX version it is simply to access qs-base/config.lua and modify the following parameters.

11. PHONE BUG POSITION

If you have this problem, just use the /resetPhonePos command.

12. OKOKNOTIFY SNIPPET

Format to change the Notifications from QS scripts to okokNotify. The Notifications Functions should be in QS config.lua file.
function SendTextMessage(msg, type) --You can add your notification system here for simple messages.
if type == 'inform' then
exports['okokNotify']:Alert('info', msg, 10000, 'info')
end
if type == 'error' then
exports['okokNotify']:Alert('error', msg, 10000, 'error')
end
if type == 'success' then
exports['okokNotify']:Alert('success', msg, 10000, 'success')
end
end

13. CD_MULTICHARACTER NUMBER

For pple who use cd_multicharacter here is the edit for number (qs-smartphone).
Search for self[cd].money = self[cd].money or 0 in server_customise_me.lua and replace by this:
local multiid = MultiChar[cd]..identifier
local result = MySQL.Sync.fetchAll('SELECT charinfo FROM users WHERE identifier = @identifier', {
['@identifier'] = multiid
})
local data = json.decode(result[1].charinfo)
self[cd].money = self[cd].money or 0
self[cd].bank = self[cd].bank or 0
self[cd].job = SortJobName(self[cd].job)
self[cd].firstname = self[cd].firstname or ''
self[cd].lastname = self[cd].lastname or ''
self[cd].dateofbirth = self[cd].dateofbirth ~= '' and self[cd].dateofbirth or '2000-01-01'
self[cd].sex = CheckSex(self[cd].sex)
self[cd].phone_number = data.phone or 0
self[cd].owned_cars = self[cd].owned_cars or 0

14. HASH PROPS

Hash props iPhone 14 (Smartphone)
Black 1560740877
Blue 414374843
Gold -1291894863
Gray 1175329129
Green -2061512355
Greenlight -257149569
Red 1173430866
Rose 55619051
White -1384838858

15. OKOKBILLING CANT PAY BILLS

ADD sv_utils.lua:
RegisterServerEvent(Config.EventPrefix..":PayInvoice")
AddEventHandler(Config.EventPrefix..":PayInvoice", function(invoiceID)
MySQLfetchAll('SELECT * FROM '..Config.DatabaseTable..' WHERE id = @id', {
['@id'] = invoiceID,
}, function(invoice)
local xReceiver = ESX.GetPlayerFromIdentifier(invoice[1]["receiver_identifier"])
if(invoice[1]["society"] == "" or invoice[1]["society"] == nil or string.gsub(invoice[1]["society"], "%s+", "") == "") then
playerPayInvoice(invoice[1], cb)
else
societyPayInvoice(invoice[1], cb)
end
end)
end)
Last modified 1mo ago