Finally got the Google Voicemail set up with Nexus5x on ATT

It took three chat sessions

Session 1 (day 1, 60 minutes):
– The forwarding settings were updated several times, few times using my Google number, few times using ATT voicemail number.
– None of this worked. I rebooted phone 4-5 times and stayed chatting for over 1 hour.
– In the end I suggested removing ATT visual voicemail (per online discussions). This was completed, however they informed me that this can take time to initiate so I stopped that chat session and decided to try next day.

Session 2 (day 2, 30 minutes):
– This person was not knowledgeable.
– I was asking them to set up forwarding numbers as they disappeared from my phone, but they said that is not needed.
– They were also asking me which number I call to retrieve Google Voicemail and were surprised when I said that I just listed to it through the web.
– After 30 minutes of them telling me that they are an expert and me concluding that they are not I thanked them and closed the chat session.

Session 3 (day 2, 60 minutes)
– This person appeared knowledgeable. One of the first changes on their end ended up in me actually getting through to GV but my phone did not ring.
– They were making changes and it was not working.
– Good decision was made on the part of the tech support. They said they will reset everything and start from scratch. They set up my ATT voicemail. That worked. Then they forwarded the busy/unavailable etc. situations to my GV number. That finally worked.
– I did not need to reboot my phone. It just took a while to initiate (I think).

Here are the things that probably made it work:
– they have to switch both HD voice and regular call forwarding to your Google Number
– they might have to turn off your ATT visual voicemail
– you probably have to wait 10-15 minutes for the settings to take effect
– you also have to run into a knowledgeable tech that can troubleshoot for you and make the correct settings

django-tables2 : How to include and render html in a cell

In my tables.py file where I defined the tables:

from django.utils.safestring import mark_safe

then, when you return the value for the cell/column use :

return mark_safe(value)

Example below

class SummaryStatus(tables.Column):
    def render(self, value):
        if "Timed Out" in value:
            self.attrs = {"td": {"class": "danger"}}
        elif "UP" in value:
            self.attrs = {"td": {"class": "success"}}
        else:
            self.attrs = {"td": {"class": ""}}
        return mark_safe(value)

Blender Python script to create animation with numerous cubes randomly changing colors and going up and down

OK, I see that the title with the randomly changing cubes grabbed your attention. Everyone likes randomly changing colors.
The script has some comments to aid in understanding. I am just learning about this so there are probably more efficient ways of doing the same. It worked though.

The code below took probably around 12 hours to render on my 3-4 year old PC (HD, 25fps). I would practice with smaller values.


import bpy
import random
# randloc states how high the cubes will go
randloc = random.randint(-3,3)
# frame_num shows every how many frames the cube location will be set
frame_num = 10

# loop through x and y coordinates, adjust to your liking. range(1,20) for x and y will fill up a nice 20x20 area with cubes
# note: z coordinate is set with randloc
for xposition in range(1,20):
    for yposition in range(1,20):
	#starting frame
        frame_num = 10
	#add cube
        bpy.ops.mesh.primitive_cube_add()
        cube = bpy.context.object
	# name the cubes uniquely
        cube.name = "Cube.00"+str(yposition)
        cube_do = bpy.data.objects[cube.name]
	# create a default material called visuals. without this you cannot set color
        mat=bpy.data.materials.new('visuals')
	# Set length of animation. With 25 fps mine was around 4 minutes with 600 set here
        for frames in range(1,600):
            # set which frame is being changed
            bpy.context.scene.frame_set(frame_num)
            # give the material a random color and assign to cube
            mat.diffuse_color = (random.random(),random.random(),random.random())
            cube.data.materials.append(mat)
            # set cube position
            cube_position = (xposition*2-20,yposition*2-20,random.choice([2,0,-2]))
            cube_do.location = cube_position
            # set the location to the frame in question
            cube_do.keyframe_insert(data_path="location", index=-1)
            # set the material and color to the frame in question
            cube_do.active_material.keyframe_insert("diffuse_color")
            # increment the frame
            frame_num += 10

I set the camera position manually to focus in on the generated cubes.

Here is the result in a music video:

LG Optimus G e970 ATT&T bootloader/root/twrp/fastboot/cyanogen/gapps

(This is a draft. Will update with more info. Might help someone)

I wanted to install CyanogenMod as this AT&T phone still has Android 4.
Found instructions here: https://wiki.cyanogenmod.org/w/E970_Info.
I was not able to load the bootloader or recovery mode. Realized I needed to root the phone.
Rooting instructions (thread at xda-developers.com) were here and easy to follow and execute.
Installed FreeGee app then. Used FreeGee to boot into bootloader using TWRP. That worked.
fastboot did not work with my phone. adb worked but not fastboot
Found instructions online (http://developer.android.com/tools/extras/oem-usb.html) how to do it. It was my driver. Disconnected my phone. Got it into bootloader, then connected to PC via USB. In device manager found Other/Phone. Manually installed driver for this from \extras\google\usb_driver\. Finally fastboot worked.
I now performed a fastboot flash per instructions from the cyanogenmod site
Moved the appropriate cyanogen zip file to the /sdcard/ folder on the device with adb push
Backed up my system with twrp backup (this was awesome as later I needed this backup).
Installed cyanogen. Rebooted and there it was. I was able to use the cyanogen apps. Android 5.0.2 was installed and working.
However, I needed my google apps. Found at least five different google apps (gapps) images online but none installed successfully. I would push the file to the Android device, then install the zip using twrp. Errors would be reported each time on installation, or upon booting the phone it would produce an endless stream of pop ups that google apps are not working properly. To recover, I would have to wipe everything using twrp, then install cyanogen 12 again from the zip file (somewhat of a hassle).
As of now I cannot find a working google apps image for this phone.

raise RallyRESTAPIError(problem), when using pyral

I have been using pyral to query Rally since using Rally search (or anything Rally) is just a pain.

This worked for the longest while.

Today however I noticed that I was getting ping errors and this message:

raise RallyRESTAPIError(problem)

. Rally was slow and breaking connections in the browser as well (for the umpteenth time).

I was able to fix it using this Stackoverflow.com question. As in several other instances what worked best for me was the answer with zero points at the bottom of this question:

Quote:

pyral use ping to check if the server is available so it won;t work over proxy till you update context.py in the pyral source code (comment out lines 146-150)


# reachable, problem = Pinger.ping(target_host)
# if not reachable:
# if not problem:
# problem = "host: '%s' non-existent or unreachable" % target_host
# raise RallyRESTAPIError(problem)

I’ll probably uncomment these lines once the connection to the Rally servers gets better and try again.

Icinga2 / IcingaWeb2 : How to get more services listed at once in Service Grid

In the /icingaweb2/monitoring/list/servicegrid view, 20 services were listed by default and I could not figure out how to change this. Once I had more than 20 I had to paginate each time. That did not make sense as it was a glance view anyway.

Took me a while to figure this out. Finally after a bunch of snooping, here is the answer.

Change in this file:
/usr/share/php/Icinga/Data/PivotTable.php

This value where it says 20:
$limit = $this->getPaginationParameter('x', 'limit', 20);
so to have 40 services in one service grid view:
$limit = $this->getPaginationParameter('x', 'limit', 40);