Recieving Null response from visitorsession variable during deployment salesIq zo - python

I am a little baffled with the issue I am facing with Zobot. I have developed a Zobot in which I am using visitorsession to store some values and reuse them later. It works great in Zoho Developer environment, we used Deluge scripts option to do the development.
But when I deploy it using embed script on my website, the visitorsession part of the code is returning null. I searched around and found not a single person facing this issue or posting it, I am really surprised its happening only to me. Can someone please suggest what I should do. I have explained what I am facing below:
I am storing values like this
storeResponse2 = zoho.salesiq.visitorsession.set(portal_name,{"a":"b"});
I am getting the values like this
zoho.salesiq.visitorsession.get(portal_name,"a").get("data").get("a");
It is working great in Zobot Development environment in the Preview section, but when I go to my website where I put the embed, I am getting null.
In both environments, the response I get when I do the set is the same. Its not throwing any error, it is giving me valid response. The response I am getting when I set, in both environments is:
{"url":"/api/v2/bigtalk/visitorsessions","object":"session","data":{"a":"b"}}
But when I do a get, in Zoho environment I get correct value, in production I get null
Attachments area

If this happens, it probably means that you are setting and getting the data from visitorsession in the same execution.
It doesn't work that way. It should be set in one execution and get in further executions (replies). And this won't be a problem anyway, as in the same execution, you'll have the data available already.

Related

Python Product Tag Update using Shopify API - 400 Error - Product :Required Parameter Missing Or Invalid

Just built my first Shopify store and wanted to use python and API to bulk-update product tags on all our products.
However, I've run into a snag on my PUT call. I keep getting a 400 Response with the message '{"errors":{"product":"Required parameter missing or invalid"}}'.
I've seen other people with similar issues on here but none of their solutions seem to be working for me.
Has anyone else run into this problem that can help me figure it out?
Here are some screenshots of my code, a printout of the payload, and the error in the response.
Code, Payload and Response:
I can successfully get the product info using the API and was originally sending the entire JSON payload that was returned just updated it with my product tags and sent it back through the API.
To narrow potential pain points, I'm keeping it simple now and just including "id" and "tags" in the payload but still get the same error.
We figured it out! It turns out that when we initially created the store we used a domain store name that was misspelled so we created a new domain store name with the correct spelling. However, the original domain store name was not deleted (not even sure it can be), and even though the new domain store name forwards to the original one and allows for GET requests, for PUT requests we had to use the original misspelled domain store name and the PUTs work fine.
I figured this out by using fiddler to capture a manual product update via the Shopify website to see what the payload looked like and that's why I noticed the store URL was different than the one we were using.
Hope this helps someone with a similar issue!

BinanceAPIException: APIError(code=-2015): Invalid API-key, IP, or permissions for action

I have a similar issue to this stack overflow question
I tried Artur's solution but it did not work.
Also, I tried matagus solution when I created API, the Enable Future grey out and can not modify.
Using Google Colab- Non-US (Canada)- Windows 10
Is there any other solution?
First of all it's good to define what exactly is the issue now... This problem can have 3 different issues, your keys, ip-block or other permissions.
I had this once before. At that time I used some test-keys. When I changed them back to my live keys, but used the TEST urls it worked again.
Hope this can help you out a little ?

Reading/writing error messages from data factory pipelines

Going to try asking this here.
I'm trying to write an error message from an Azure Data Factory pipeline to a table in SQL server. It needs to capture the error message from a Databricks Python job. I can't find any official documentation and the method I have found from this source:
#{activity('Proc source').error.message}
..doesn't write anything to the table. Just a blank string with no explanation.
Why data factory doesn't just have an area where you can view the details of errors instead of just saying "Failed" is beyond me. Or if it does, it's hidden away.
Does anyone have any ideas?
You can see the details of error at here.
#{activity('Proc source').error.message}
This expression works.
Is errorCode saved to your table?Make sure your activity name is correct.
SOLVED:
For anyone else reading this, the problem turned out to be something very stupid. I'd included a space in the python file name.
This returned an error code of 3202 and a blank error message.
I had another problem and resolution after this that I'd like to share, again for anyone frantically googling a solution to the problem. Once I'd removed spaces from the python filename, I logged an error code of '3204'
and the error message: "Databricks execution failed with error message: . Run page url: (link to page showing clusters)". In the Databricks workspace launchable through the Azure portal, selecting a cluster through the 'clusters' sidebar then heading to 'Driver Logs' will show errors, in the 'Standard error' window that comes up.
I had already installed the libraries I needed on an existing cluster, but I'd forgotten to change a setting in the Databricks linked service. 'Select cluster' was set to 'new job cluster' when I needed 'Existing interactive cluster'. Thus, it wasn't pointing to the cluster I had expected.
These are all fairly small errors as it turns out, but again I hope that someone else dealing with the same issues will be able to find this post and save themselves some hassle!

How to access array values in Postman using python

I came across this question that was asked a while back to send array data in postman (Is it possible to send an array with the Postman Chrome extension?).
My problem is though, I want to be able to access all those variables sent. Currently, I'm only receiving the first one because I say:
key=shareholder, value=100
If I try
key=shareholder[0], value=100
key=shareholder[1], value=200
or even without the indexes,then I get a NONETYPE error for shareholder
code:
request_data={
"shareholder": []
}
request_data["shareholder"].append(int(request.form.get("shareholder")))
Would definitely appreciate the help. Sorry if anything I said is unclear
To access a variable in Postman is incredibly easy. BUT, Postman is Javascript application. You need to use python nowhere with postman. Javascript is a comprehensive one.
I didn't get what kind of variable you want to access, but if you give me a clear example I will tell you how to reach any level of variable in postman
MORE INFO:
https://www.getpostman.com/docs/v6/postman/environments_and_globals/variables

xgoogle python library is not working any more?

I was using the xgoogle python library for one of my projects. It was working fine till recently. I am not getting the resultset that I used to get before. If anyone who has used this library written by Peter Krummins, faced a similar situation, can you please suggest a work around ?
The presence of BeautifulSoup.py hints that this library uses web scraping to get its result.
A common problem with this is that it will easily break when the design/layout of the page being scraped changes. And the problem you see seems to coincide with the new search results layout that Google introduced just recently.
Another problem is that it often is against the terms of service of the site being scraped. And according to point 5.3 of the Google Terms Of Service it actually is:
You specifically agree not to access (or attempt to access) any of the Services through any automated means (including use of scripts or web crawlers) [...]
A better idea would be to use the Custom Search API.
Peter Krumin's product xgoogle looks to be extremely useful both to me and I image many others.
https://github.com/pkrumins/xgoogle
For me the current version is 1.3 is not working.
I tried a new install from GitHub, ran the examples and nothing is returned.
Adding a debugger to the source code and tracing the data captured in a query to its disappearance the problem occurs in a routine called search.py subroutine "_extract_results" at a parser command
results = soup.findAll('li', {'class': 'g'})
The soup object has material in it but the "findAll" fails to return anything.
Looks like its searching for lists and if there are none it returns nothing.
I am unsure what html you would try to match to get a result.
If anyone knows how to make the is work I am very interested.
A little more googling and it appears xgoogle is no longer supported or works.
Part of the trouble is that Google changes the layout of its results pages every so often and so any scraping software that assumes some standard layout is in time doomed to failure.
There are however other search engines that are locally installed and thus provide a results layout that are less likely change with upgrades and will not change at all if you don't upgrade.
I am currently investigating Yacy. Easy to install and can be pointed at specific sites if you want.

Categories

Resources