WhatsApp Business Platform, Message Template Guidelines

Rejection Reasons

If your message template(s) have been rejected, it may have been for one of the following reasons:

  • Spelling or grammatical errors. Messages with misspellings or grammatical errors may prompt customers to view these message as spam or a hoax.
  • Variable parameters are missing or have mismatched curly braces. The correct format is {{1}}.
  • Variable parameters are not defined. All parameters must have a known purpose, for example, the type of media you plan to send in a media message. Your template will be rejected if we do not know what goes into a specific parameter. We strongly recommend adding a sample with your submission.
  • Variable parameters contain special characters such as a #$, or %.
  • Variable parameters are not sequential. For example, {{1}}{{2}}{{4}}{{5}} are defined but {{3}} does not exist.
  • Language defined does not match content. For example, Spanish was select but the content is English or the content is a mixture of languages containing both Spanish and English.
  • Submission format for testing your API connection is incorrect. The correct format is:
    • Message template name: test
    • Content: Hello {{1}}
  • The URLs for your links are shortened. Short links obscure the intended link destination.
  • The URL domain in your links does not belong to your business.
  • The message template(s) contains content that violates WhatsApp’s Commerce Policy: When you offer goods or services for sale, we consider all messages and media related to your goods or services, including any descriptions, prices, fees, taxes and/or any required legal disclosures, to constitute transactions. Transactions must comply with the WhatsApp Commerce Policy.
  • The message template(s) contain content that violates WhatsApp’s Business Policy: Do not request sensitive identifiers from users. For example, do not ask people to share full length individual payment card numbers, financial account numbers, National Identification numbers, or other sensitive identifiers. This also includes not requesting documents from users that might contain sensitive identifiers.
  • The content contains potentially abusive or threatening content, such as threatening a customer with legal action or threatening to publicly shame them.

Quality Rating

The quality rating shows how messages from your template have been received by your customers in a rolling window of the past 24 hours. The quality rating is based on how messages have been received by recipients over the past seven days and is weighted by recency.

We show it in three different states:

  • High (green)
  • Medium (yellow)
  • Low (red)

If we do not have enough quality signals from conversations between your business and customers, your quality status may be “unknown” or “unavailable”.

Status

There are different statuses for templates:

  • Pending: This is when a business first submits a template that hasn’t yet been on-boarded and approved.
  • Approved: The template is approved to be sent on our platform.
  • Rejected: The template is rejected to be on-boarded to our platform.

Occasionally, a template may show one of two particular statuses that are related to quality: Flagged and Disabled.

  • Flagged: This is a warned state. When the quality rating reaches a low (red) state, the template is moved to a Flagged status. If the quality rating improves to a high (green) or medium (yellow) state over 7 days, the template returns to an Approved status.
  • Disabled: After a template enters Flagged Status, if the quality rating does not improve within 7 days, the template across all languages will be Disabled. When disabled, a template cannot be edited or used for sending messages.

Notifications

You will receive an email notification if a template status from your WhatsApp business account(s) changes to Flagged or Disabled.

7 Best WordPress Multilingual Plugins for SEO

The Best WordPress Multilingual Plugins for SEO

As mentioned above, multilingual plugins are your best bet as they allow you to translate every aspect of your site manually. This includes content, SEO data, themes, plugins, URLs, and more.

Let’s quickly take a look at the best WordPress multilingual plugins you should consider for international SEO

1. WPML

WPML is definitely one of the best WordPress multilingual plugins on the market.

WPML is our top recommendation for anyone looking to build a multilingual WordPress site. It’s one of the oldest and most reliable WordPress multilingual plugins around. That’s why it’s trusted by close to a million websites.

One reason many websites use WPML is because of its reliability. With WPML, you can be assured of quality translations, resulting in good user experiences.

WPML also has many other advantages, a major one being compatibility with most WordPress themes and plugins on the market. This means unlike many other plugins in its class, you don’t need patches to make it work.

Features

  • Over 40 languages supported
  • Flexible translation methods (including automatic translation)
  • Translation workflow control
  • Supports multicurrency e-commerce sites
  • String translation

WPML also allows you to connect to third-party translation service providers. This allows you to select which content needs translating and then have a professional translate it. Once done, you can have the content submitted directly to your website.

Pricing: Starts at $39

2. TranslatePress

If you need an easy to use WordPress multilingual plugin, then TranslatePress is it.

TranslatePress is another plugin to consider if you want to create a multilingual site. It has features for both manual and automatic translation.

One feature that makes TranslatePress stand out from the crowd is that you can translate your website directly from the front end. This makes it easy to see exactly what you’re translating.

As a result, you get to control the quality of translation for each page and element of the website you’re working on.

TranslatePress also makes it easy to create multilingual sites by allowing you to translate your site yourself or assign someone else a custom translator role. This user can translate your content without having access to your site’s admin area, ensuring privacy and security are not compromised.

Features

  • Supports dynamic strings
  • Image translation
  • Customizable language switcher
  • WooCommerce support
  • Generates SEO-friendly URLs

If you want the option to switch between manual and automatic translation, then TranslatePress is the perfect multilingual plugin for you.

Pricing: Starts at €89 per year. A free plan is also available.

3. Weglot

Weglot is one of the best WordPress multilingual plugins that offer cloud-based services.

Weglot is a powerful cloud-based WordPress translation plugin that seamlessly integrates with your site to turn it multilingual.

Because it’s a cloud-based application, you will have to enter the Weglot API to connect your site to the Weglot platform. Once that part of the setup process is done, you’ll be required to choose your site’s primary language and the languages you want to add.

Unlike other WordPress multilingual plugins that work on-site, Weglot handles all translations on their platform and pushes them to your live website. One of the biggest advantages of Weglot is its powerful translation management tools, which include automatic indexing for each translated page.

Weglot also has collaboration tools to help you seamlessly work with your team or professional translators. This makes manual translation smoother and faster.

Features

  • Dedicated URLs for each language
  • Automatic hreflang tags
  • Metadata translation
  • Full website translation

The best part is that Weglot follows multilingual SEO best practices. As a result, all your translated pages will rank faster.

Pricing: Starting from €9.99 per month for 1 language and 10,000 Words. The PRO plan supports 5 languages and 200,000 words for €49 per month.

4. Polylang

Polylang is an easy to use WordPress multilingual plugin.

Polylang is another WordPress multilingual plugin you must consider. One primary reason for this is its ease of use. The plugin has a simple interface that lets you easily add translations for your posts and pages, custom post types, widgets, and more.

Besides translations, Polylang allows you to set up SEO-friendly URLs for each language your website supports. It also integrates with most of the popular WordPress SEO plugins.

In addition, Polylang takes care of important multilingual SEO elements like HTML hreflang tags and open graph tags, giving your website a better chance of ranking.

Features

  • Super easy installation process
  • Automatic copying of categories, post tags and other metadata when translating a post or page
  • Language switcher available as a block

The major drawback of Polylang is that it doesn’t translate WordPress themes and plugins. Also, if you want to translate WooCommerce pages, you’ll need to purchase an addon, making it pricier than other options on this list.

Pricing: A free version is available. Paid plans start at €99.

5. MultilingualPress

MultilingualPress should be on your list of the best WordPress multilingual plugins.

MultilingualPress is another WordPress multilingual plugin that lets you reach an international audience easily. However, the plugin takes a different approach to building multilingual WordPress sites. Instead of translating your posts and pages, it uses a multisite system.

This means each language you support has a dedicated website.

Taking this approach allows you to efficiently manage content in each language while improving site performance by loading one language at a time.

To do this, Multilingual comes with a language switcher that allows visitors to choose the language of their choice. When visitors select a language, they will be directed to the respective language site you’ve set up.

Features

  • Optimized for WooCommerce
  • Automatic hreflang support for language sites
  • SEO-friendly URLs
  • Top-level domains for each language site

Multilingual’s easy-to-use interface makes it a breeze to manage your translations from a single dashboard.

Pricing: Starts from $199 per year for a single multisite license.

Best WordPress Multilingual Plugins that Use Auto Translation

Auto translation plugins use online translation services to help turn your site multilingual.

The biggest advantage of these plugins is that you don’t need to write content in multiple languages. However, the drawback is that the quality of translations is not as good as it can be.

So, let’s quickly look at the top plugins in this category that can help you create a multilingual WordPress site.

6. GTranslate

GTranslate is the best auto-translation plugin on the market.

GTranslate is a popular WordPress auto-translation plugin powered by Google Translate.

The plugin allows you to translate your content into over 100 available languages. And if needed, you can manually correct Google’s automatic translation to improve the quality.

GTranslate also provides a Google Analytics integration, enabling you to easily track whether providing translation on your site is actually beneficial to your users and business.

The plugin has a widget for users to easily select their preferred language, making it easy for you and your website visitors to use. It can also automatically change content based on the language of the user’s browser.

Features

  • Machine translation
  • Search engine indexing
  • URL translation
  • Usage statistics

If you’re looking for an auto-translation plugin for your WordPress site, then GTranslate should definitely be on your list.

Pricing: Starts at $9.99/month. A free version is also available.

7. Lingotek

Lingotek uses both machine translation and human translators to help you create a multilingual website.

Lingotek is a free yet powerful WordPress multilingual plugin that makes it easy to translate your website into other languages.

The plugin uses Microsoft Translator for automatic translations, so you’ll need to provide the commercial API.

A unique feature that differentiates Lingotek from other WordPress translation plugins is its marketplace of professional in-country translators. However, if you have a preferred translation agency that isn’t in Lingotek’s marketplace, you can still use them.

No matter your translation method, everything can be done right within your WordPress dashboard.

Features

  • Real-time translation monitoring
  • Machine and human translation
  • Works with other auto-translation plugins

Pricing: Lingotek is a free translation plugin.

How check incoming request in Linux / ubuntu from port 80 – http

Check incoming request from port 80

$ netstat -an | grep 80

Check incoming request from port 80 with selected IP address

$ netstat -an | grep 80 | grep 103.173.93.2

Check incoming request from port 80 only ESTABLISHED connection

$ netstat -an | grep 80 | grep ESTABLISHED

Check number of incoming request from port 80

$ netstat -an | grep 80 | wc -l

how to get to user preferences in website using JavaScript

1. JavaScript code for setting cookies

First we have some generic code that will set a cookie with a given name and value. In this example we’ve set the expiry date (when the cookie will be removed from your browser) to 30 days and all cookies will be set with a path value of ‘/’ (the root level of the website):

var today = new Date();
  var expiry = new Date(today.getTime() + 30 * 86400 * 1000); // plus 30 days

  function setCookie(name, value)
  {
    document.cookie = name + "=" + escape(value) + "; expires=" + expiry.toGMTString() + "; path=/";
  }

Then comes the form handler function which is also quite simple. We first populate an associative array, prefs, with the selected name-value pairs and then loop through that array setting a cookie for each value:

 var prefs = new Array();

  function setPrefs(form)
  {
    prefs['fontfamily'] = form.fontfamily.options[form.fontfamily.selectedIndex].value;
    prefs['overflow'] = form.overflow.options[form.overflow .selectedIndex].value;
    for(var x in prefs) setCookie(x, prefs[x]);
    return true;
  }

A better approach is to use a single cookie to hold all the values rather then one for each. The reason for this is that browsers will only hold a certain number of cookies from a domain before they start deleting the oldest. 

2. PHP code for reading cookies

In the PHP code that displays the template for this website we add the following code to the HEAD of the HTML page (inside the STYLE tags).

First for the font famliy:

  if(isset($_COOKIE['fontfamily']) && $_COOKIE['fontfamily']) {
    echo "  body { font-family: \"{$_COOKIE['fontfamily']}\"; }\n";
  }

and for the display setting:

  if(isset($_COOKIE['overflow']) && $_COOKIE['overflow']) {
    echo "  #content { max-height: {$_COOKIE['overflow']}px; overflow: auto; }\n";
  }

and so on for other values. You can see the extra CSS properties in the HEAD of each page by viewing the HTML source.

Because the cookies are set with a path of ‘/’ they apply to all pages in this domain. And because we use a single template for every page the preferences you select will apply to the entire site.

The advantage of using JavaScript to set the cookies is that they’re recognised by the browser immediately. If we submitted the form and used PHP to set the cookies then they wouldn’t appear immediately in the $_COOKIE array as the browser hasn’t yet told the server that it has them yet. That would happen on the next request.

To get around this you have to do something like the following:

<?PHP
  if(isset($_POST['fontfamily'])) {
    setcookie('fontfamily', $_POST['fontfamily'], time() + 30 * 86400, '/');
    $_COOKIE['fontfamily'] = $_POST['fontfamily']);
  }
?>

The first command tells the browser to set the cookie, and the second adds it to the $_COOKIE array so our script (above) can see the value right away.

Video editing tips for Video Bloggers

Shoot with editing in mind

The best time to start thinking about editing is during the writing phase. By planning your edits early on, you can anticipate how your video will look and how you want your viewers to react.

Consider your camera positions, angles and movements. Think about how your video will open and close, and what the key moments in between are. For larger projects, you can make a simple ‘shot list’ – writing down all the shots that you’ll need so you don’t forget anything.

Ask yourself:

  • When should I do multiple takes to get the right shots?
  • Will I need extra footage for my B-roll, trailer or teasers?

As you get more experienced with editing, you may decide to buy a more sophisticated editing program. When shopping around, consider these points:

  • Budget. There are many budget-friendly apps on the market and starter apps at budget prices. Higher-end video editing apps are typically used for more elaborate projects. Check for trials or education discounts.
  • Equipment. Are you using a smartphone, DSLR or pro camcorder? Recording in SD or HD? Review the tech specs of each app to see which types of cameras and file formats are supported. Also check the system requirements for your computer.
  • Features. Even affordable programs typically offer a wide range of features, such as colour correction for making your footage really pop. Higher-priced apps may deliver more complex capabilities such as shared team projects and customisable workspaces.

You can optimise your videos in YouTube Studio by adding end screens and trimming sections of your video before or after publishing. You can also add music and sound effects to your video with the Audio Library in YouTube Studio. 

Editing like a pro

Often, the best way to improve your editing is through practice. These tips can help you take your editing to the next level:

  • Know your software. Whichever video editing software you use, try looking up keyboard shortcuts for your most repeated tasks. You can also find lots of videos on YouTube (and other sites) showing you how to do cool editing tricks.
  • Edit for pacing. Think about the pace and rhythm of your video. Do you want to move quickly from shot to shot, to build intensity and excitement? Or do you want to allow viewers more time to absorb and reflect upon what’s happening in front of them? Some editors use ‘jump cuts’ to cover up unwanted lines or filler words.
  • Turn to your audience. What matters most is how you connect with your target audience. If you’ve uploaded some videos already, try looking at your audience retention in YouTube Analytics. Dips can mean that viewers skip those parts or leave your video. Think about the reasons why your top videos kept viewers engaged and how editing might have played a role.

We recommend

Start with what you have. Often, phones and computers come with pre-installed editing software.

(#200) You do not have permission to access this field.

There is no permission called “contact_email”, there is only “email”.

That being said, you need a Page Token to post “as Page”. Use /me/accounts to get Page Tokens for your Pages. The permission error most likely means that you don´t have the appropriate permissions to post to the Page with your Access Token. Make sure it is a Page you manage, and make sure the Access Token includes the publish_pages permission. You can debug your Access token in the Debugger: https://developers.facebook.com/tools/debug/

If this error occur during WhatsApp API configuration, Call me for this solution.

Samsung Galaxy Watch4 Bluetooth(4.0 cm, Black, Compatible with Android only)

Email : adityaypi@yahoo.com, Mobile : +91-9555699081

activity store in file or MySQL database using php which is better

Logs using files are more efficient, however logs stored in the database are easier to read, even remotely.

however that connecting and inserting rows into the database is error prone (database server down, password wrong, out-of-resources).

Log to db instead if you need other people needs to read logs in a web interface or if you need the ability to search through logs. As someone else has pointed out also concurrency matters, if you have a lot of users log to db could scale better.

Yes, it’s faster to write to files but it’s far faster for you to find what you need in the logs if they are in a database.

I think storing logs in database is not a good idea. The pros of storing logs to databases over files is that you can analyze your logs much more easily with the power of SQL, the cons, however, is that you have to pay much more time for database maintenance. You’d better to set up a separate database server to store your logs or your might get too much log INSERT which will decrease your database performance to production use; also, it’s not easy to migrate, archive logs in database, compared with files.

Error logging is best limited to files in my opinion, because if there is a problem with the database.

When using filesystem careful with :

  • Confidentiality : Put documents outside of your Apache Document Root. Then a PHP Controller of yours will output documents.
  • Sharded path : do not store thousands of documents in the same directory, make different directories. You can shard with a Hash on the Filename for example. Such as /documents/A/F/B/AFB43677267ABCEF5786692/myfile.pdf.
  • Inode number : You can run out of inodes if you store a lot of small files (might not be your case if storing mostly PDF and office documents).

Video equipment tips for Video Bloggers

Being a YouTube creator requires at least a foundational knowledge of video equipment. You might be asking yourself: What type of camera will I use? How will I handle sound and lighting? Here’s an overview of some common production equipment choices that can help you get started.

Cameras

There’s no ‘one size fits all’ – consider what you want to achieve with your videos. Here are two common types:

  • Point-and-shoot cameras are simple, all-in-one devices that are great for frequent vlogging in almost any setting. Some models have a reversible LCD screen so that you can see your shot. These no-fuss cameras can deliver full HD (1080) image quality, and many creators use them in their everyday videos.
  • DSLR cameras can deliver a more cinematic look, but may require a learning curve to operate. They use interchangeable lenses, are much heavier and are sometimes trickier to focus. These cameras cost more and they are typically used by creators who want a more artistic or professional look.

You can always start with your mobile device’s camera. It’s a great option before you invest in a standalone camera.

Take a look at camera reviews from other YouTube creators to find out what brands and models they recommend.

Sound

Good sound is a must. Viewers often don’t mind imperfect lighting, but they are less accepting of poor sound quality in the video.

If you’re using your camera’s onboard mic, you may need to stay about a metre away from the camera for the best audio.

  • Some creators buy a ‘shotgun’ mic; since these have directional recording, they can be effective at picking up natural sound from a longer range.
  • When you need to record at a distance, you can use a wireless lavalier mic, which can be attached to you. For example, a lav mic might be appropriate for the instructor in a fitness video.

Confirm whether your camera has a port for an external mic before buying one.

Lighting

  • Many creators use a ‘two-point’ lighting system. This involves lighting your main subject from two light sources at opposing directions. In this setup, the ‘key light’ gives the primary lighting, while the ‘fill light’ balances out the shadows.
  • Another option would be ‘soft lights’, which sometimes cost less, consume less power and are more flattering. A single soft light can be great for close-up shots. You can add lights to illuminate the background or other parts of the scene, as needed.
  • Don’t forget about one of the brightest (and cheapest) lights in existence – the sun! Try recording outside or using natural daylight through a window.
  • For shooting on the go, consider camera-mounted lights.

We recommend

  • If you have a lot of questions, consider your creative style and production goals as you select the right equipment. Some creators aim for a highly polished video, while others are OK with something casual and authentic.
  • If you want to keep costs down, you could buy the most affordable equipment and upgrade later based on your video-making needs.
  • Often, the best piece of equipment is the one you have to hand. Use your mobile device to get started immediately.

Python code for store system load into file and display stored system load

Python code for store system load into file

#!/usr/bin/python

import os
try:
    t = os.popen('uptime').read()[:-1]
    #print(t)
    f=open("/home/website/public_html/public/load.txt", "a+")
    f.write("%s\r\n" %t)
    f.close()
    f.flush()
except IOError as (errno,strerror):
    print "I/O error({0}): {1}".format(errno, strerror)

Python code for display system load stored into file

#!/usr/bin/python

import os
try:
    f = open("/home/website/public_html/public/load.txt", "r")
    print(f.read())
    f.close()
    f.flush()
except IOError as (errno,strerror):
    print "I/O error({0}): {1}".format(errno, strerror)

Interesting facts about Hummer

  • AM General began manufacturing High Mobility Multipurpose Wheeled Vehicles (HMMWV) or Humvees for the U.S military in 1983, and made the first civilian Hummer in 1992. Later, the company officially named it ‘Hummer’.
  • General Motors acquired the ownership and marketing rights of the Hummer from AM General in 1999. However, AMG continued to design the H1 exclusively for the civilian market. While, the H2 was the first product built under the flagship of the GM. The H3 was the last generation of the SUV, which was discontinued when the company shut down in 2010. Therefore, Hummer cars in India and around the world are quite a rare sight.
  • Despite being classified as a Class 3 truck, it doesn’t require a special driving license.
  • Hummer dealers across the world were complied to organize four Hummer off-road events per year.
  • The SUV is especially geared for off-road driving. The H1 and H2 can climb on a 22-inch and a 16-inch vertical wall or mountain, run up to 30-inch and 20-inch of water, respectively. Both the models can navigate a 60% grade and cross 40% side slop.
  • The H2 is based on the GM truck platform, also used for GMC and Chevy pickups, in 1999, which is now found on the Yukon, Suburban, Escalade Tahoe and other GM SUVs and trucks.
  • The Hummer can drive through 30-inches deep water without floating, and maintaining traction under water. Most components of the SUV are sealed against the elements that make it an amphibian-cum-submarine vehicle. It has drain plugs in the floor that released the water that enter in the car underneath.

The Hummer, discontinued in 2010, will always be admired for its glorious history, exceptional off-road capabilities and commanding road presence. There are several other new cars in the market, but no one can replace the legendary civilian Hummer. We never had sales outlets of Hummer cars in India, thus its buyers got them imported directly